// 类定义方式如下
var obj = /** @class */ (function () {
    // 构造函数
    function obj(engine) {
        // 成员属性
        this.name1 = "男";
        // 成员方法
        this.fn2 = function () {
            return '成员方法';
        };
        this.engine = engine;
    }
    Object.defineProperty(obj.prototype, "engine2", {
        // get方法
        get: function () {
            return this.engine;
        },
        // set方法
        set: function (engine2) {
            this.engine = engine2;
        },
        enumerable: false,
        configurable: true
    });
    // 类作用域
    obj.myName = "pengyuyan"; // 静态属性
    // 静态方法
    obj.staticFn = function () {
        return '静态方法';
    };
    return obj;
}());
var setObj = new obj('hello');
console.log(obj.myName); //  "pengyuyan"
console.log(obj.staticFn()); // "静态方法"
console.log(setObj.fn2()); // "成员方法"
console.log(setObj.engine2); // "hello"
console.log(setObj.engine); // "hello"
